 bondscell_results $fbd43578-2061-4bf0-a87c-e193a42998caqueued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampAzKxpersist_js_state·has_pluto_hook_features§cell_id$fbd43578-2061-4bf0-a87c-e193a42998cadepends_on_disabled_cells§runtime published_object_keysdepends_on_skipped_cells§errored$964d0060-9ed0-4824-a92c-1ae20c25c288queued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampAzK|persist_js_state·has_pluto_hook_features§cell_id$964d0060-9ed0-4824-a92c-1ae20c25c288depends_on_disabled_cells§runtimepublished_object_keysdepends_on_skipped_cells§errored$49786782-88c7-11ee-361d-9578fba566f6queued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampA|Mmzpersist_js_state·has_pluto_hook_features§cell_id$49786782-88c7-11ee-361d-9578fba566f6depends_on_disabled_cells§runtime published_object_keysdepends_on_skipped_cells§errored$31c03827-9c7a-45ba-aec4-d45794f3e93fqueued¤logsrunning¦outputbodymsgٮArgumentError: Package AbstractPlutoDingetjes not found in current path:
- Run `import Pkg; Pkg.add("AbstractPlutoDingetjes")` to install the AbstractPlutoDingetjes package.
stacktracecall_short"require(into::Module, mod::Symbol)inlined£urlehttps://github.com/JuliaLang/julia/tree/742b9abb4dd4621b667ec5bb3434b8b3602f96fd/base/loading.jl#L959path./loading.jlsource_packagecall"require(into::Module, mod::Symbol)linfo_typeCore.MethodInstancelineǤfileloading.jlfuncrequireparent_modulefrom_ccall_shorttop-level scopeinlined£urlpathف/home/runner/work/disorganised-mess/disorganised-mess/APD with_js_link bidirectional 3.jl#==#31c03827-9c7a-45ba-aec4-d45794f3e93fsource_packagecalltop-level scopelinfo_typeCore.CodeInfolinefileKAPD with_js_link bidirectional 3.jl#==#31c03827-9c7a-45ba-aec4-d45794f3e93ffunctop-level scopeparent_modulefrom_c¤mime'application/vnd.pluto.stacktrace+objectrootassigneelast_run_timestampA|dNpersist_js_state·has_pluto_hook_features§cell_id$31c03827-9c7a-45ba-aec4-d45794f3e93fdepends_on_disabled_cells§runtimepublished_object_keysdepends_on_skipped_cells§errored$24aad28b-8f4e-484f-8301-0c9205a40d66queued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampAzKpersist_js_state·has_pluto_hook_features§cell_id$24aad28b-8f4e-484f-8301-0c9205a40d66depends_on_disabled_cells§runtime Cpublished_object_keysdepends_on_skipped_cells§errored$3b5f9c8b-200b-4f26-a48e-faf28a6bf80aqueued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampAzFvpersist_js_state·has_pluto_hook_features§cell_id$3b5f9c8b-200b-4f26-a48e-faf28a6bf80adepends_on_disabled_cells§runtime(ȵpublished_object_keysdepends_on_skipped_cells§errored$3ff49038-6945-4eb4-8ac7-81ac7531572bqueued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampAzKIRpersist_js_state·has_pluto_hook_features§cell_id$3ff49038-6945-4eb4-8ac7-81ac7531572bdepends_on_disabled_cells§runtime Kpublished_object_keysdepends_on_skipped_cells§errored$c30f2819-5c76-4ac7-b962-e7d465f652b9queued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampAzK๰persist_js_state·has_pluto_hook_features§cell_id$c30f2819-5c76-4ac7-b962-e7d465f652b9depends_on_disabled_cells§runtime 6published_object_keysdepends_on_skipped_cells§errored$cbf6498f-abcf-4d1e-9f03-364aad4d0db5queued¤logsrunning¦outputbodymsg2syntax: extra token "THIS" after end of expressionstacktracesource_packagefilesyntax error.jlfuncthrow_syntax_errorcall_short#throw_syntax_error(syntax_err::Any)inlined£urlbfile:///home/runner/.julia/packages/Pluto/6smog/src/runner/PlutoRunner/src/display/syntax error.jlpath[/home/runner/.julia/packages/Pluto/6smog/src/runner/PlutoRunner/src/display/syntax error.jlcall#throw_syntax_error(syntax_err::Any)linfo_typeCore.MethodInstanceline̲parent_modulefrom_csource_packagefileKAPD with_js_link bidirectional 3.jl#==#cbf6498f-abcf-4d1e-9f03-364aad4d0db5func##function_wrapped_cell#5615call_shorttop-level scopeinlinedãurlpathف/home/runner/work/disorganised-mess/disorganised-mess/APD with_js_link bidirectional 3.jl#==#cbf6498f-abcf-4d1e-9f03-364aad4d0db5calltop-level scopelinfo_typeNothinglineparent_modulefrom_c¤mime'application/vnd.pluto.stacktrace+objectrootassigneelast_run_timestampAzK4ʰpersist_js_state·has_pluto_hook_features§cell_id$cbf6498f-abcf-4d1e-9f03-364aad4d0db5depends_on_disabled_cells§runtimepublished_object_keysdepends_on_skipped_cells§errored$e041300e-a263-4eca-976a-0a00c25ae318queued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampAzKapersist_js_state·has_pluto_hook_features§cell_id$e041300e-a263-4eca-976a-0a00c25ae318depends_on_disabled_cells§runtime 9published_object_keysdepends_on_skipped_cells§errored$7db59ac0-2c7f-4be7-bdb7-19af83fe82ebqueued¤logsrunning¦outputbody0link_from_julia (generic function with 1 method)mimetext/plainrootassigneelast_run_timestampA|persist_js_state·has_pluto_hook_features§cell_id$7db59ac0-2c7f-4be7-bdb7-19af83fe82ebdepends_on_disabled_cells§runtime published_object_keysdepends_on_skipped_cells§errored$9542b8ab-c442-45c9-8f9e-6e710ed71bbbqueued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampAzKpersist_js_state·has_pluto_hook_features§cell_id$9542b8ab-c442-45c9-8f9e-6e710ed71bbbdepends_on_disabled_cells§runtime 3õpublished_object_keysdepends_on_skipped_cells§errored$80d9b34a-a118-437d-954b-bec3be94273fqueued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampAzLpersist_js_state·has_pluto_hook_features§cell_id$80d9b34a-a118-437d-954b-bec3be94273fdepends_on_disabled_cells§runtime {published_object_keysdepends_on_skipped_cells§errored$4d1057f7-c033-4bcb-9b81-a93d96c1a1f8queued¤logslinemsgatext/plaincell_id$4d1057f7-c033-4bcb-9b81-a93d96c1a1f8kwargsisready(c)falsetext/plainidMain_workspace#2_5794da15fileف/home/runner/work/disorganised-mess/disorganised-mess/APD with_js_link bidirectional 3.jl#==#4d1057f7-c033-4bcb-9b81-a93d96c1a1f8group APD with_js_link bidirectional 3levelInfolinemsgatext/plaincell_id$4d1057f7-c033-4bcb-9b81-a93d96c1a1f8kwargsisready(c)truetext/plainidMain_workspace#2_5794da16fileف/home/runner/work/disorganised-mess/disorganised-mess/APD with_js_link bidirectional 3.jl#==#4d1057f7-c033-4bcb-9b81-a93d96c1a1f8group APD with_js_link bidirectional 3levelInfolinemsgatext/plaincell_id$4d1057f7-c033-4bcb-9b81-a93d96c1a1f8kwargsisready(c)falsetext/plainidMain_workspace#2_5794da17fileف/home/runner/work/disorganised-mess/disorganised-mess/APD with_js_link bidirectional 3.jl#==#4d1057f7-c033-4bcb-9b81-a93d96c1a1f8group APD with_js_link bidirectional 3levelInforunning¦outputbodymimetext/plainrootassigneelast_run_timestampA|۰persist_js_state·has_pluto_hook_features§cell_id$4d1057f7-c033-4bcb-9b81-a93d96c1a1f8depends_on_disabled_cells§runtime4vpublished_object_keysdepends_on_skipped_cells§errored$24d5cf8a-439c-4b99-a8d6-2f03aefb9658queued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampAzFZpersist_js_state·has_pluto_hook_features§cell_id$24d5cf8a-439c-4b99-a8d6-2f03aefb9658depends_on_disabled_cells§runtime 	ٵpublished_object_keysdepends_on_skipped_cells§errored$274f0781-26d5-49f6-8306-d81129b8afafqueued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampAzKZpersist_js_state·has_pluto_hook_features§cell_id$274f0781-26d5-49f6-8306-d81129b8afafdepends_on_disabled_cells§runtime Zpublished_object_keysdepends_on_skipped_cells§errored$4b9adb89-a54b-4cba-9091-79c81168560dqueued¤logslinemsgH[32m[1m  Activating[22m[39m project at `~/.julia/environments/v1.7`
text/plaincell_id$4b9adb89-a54b-4cba-9091-79c81168560dkwargsidPlutoRunner_d1acb81efileP/home/runner/.julia/packages/Pluto/6smog/src/runner/PlutoRunner/src/io/stdout.jlgroupstdoutlevelLogLevel(-555)running¦outputbodymimetext/plainrootassigneelast_run_timestampA|2fpersist_js_state·has_pluto_hook_features§cell_id$4b9adb89-a54b-4cba-9091-79c81168560ddepends_on_disabled_cells§runtimepublished_object_keysdepends_on_skipped_cells§errored$78a32b95-d502-4e96-b074-a1d07e5a51a5queued¤logsrunning¦outputbodymsgٜArgumentError: Package HypertextLiteral not found in current path:
- Run `import Pkg; Pkg.add("HypertextLiteral")` to install the HypertextLiteral package.
stacktracecall_short"require(into::Module, mod::Symbol)inlined£urlehttps://github.com/JuliaLang/julia/tree/742b9abb4dd4621b667ec5bb3434b8b3602f96fd/base/loading.jl#L959path./loading.jlsource_packagecall"require(into::Module, mod::Symbol)linfo_typeCore.MethodInstancelineǤfileloading.jlfuncrequireparent_modulefrom_ccall_shorttop-level scopeinlined£urlpathف/home/runner/work/disorganised-mess/disorganised-mess/APD with_js_link bidirectional 3.jl#==#78a32b95-d502-4e96-b074-a1d07e5a51a5source_packagecalltop-level scopelinfo_typeCore.CodeInfolinefileKAPD with_js_link bidirectional 3.jl#==#78a32b95-d502-4e96-b074-a1d07e5a51a5functop-level scopeparent_modulefrom_c¤mime'application/vnd.pluto.stacktrace+objectrootassigneelast_run_timestampA|persist_js_state·has_pluto_hook_features§cell_id$78a32b95-d502-4e96-b074-a1d07e5a51a5depends_on_disabled_cells§runtimepublished_object_keysdepends_on_skipped_cells§errored$9b58eaa7-0cda-4e29-ab11-ed03f40a1c11queued¤logsrunning¦outputbodyprefixBase.RefValue{String}elementsx""text/plaintypestructprefix_shortRefValueobjectide16bd15c6e0251cbmime!application/vnd.pluto.tree+objectrootassigneestatelast_run_timestampA},persist_js_state·has_pluto_hook_features§cell_id$9b58eaa7-0cda-4e29-ab11-ed03f40a1c11depends_on_disabled_cells§runtime>0published_object_keysdepends_on_skipped_cells§errored$9edfc363-c5a9-43b1-94fc-2cd63171ba34queued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampA}&ͼpersist_js_state·has_pluto_hook_features§cell_id$9edfc363-c5a9-43b1-94fc-2cd63171ba34depends_on_disabled_cells§runtime  ˭published_object_keysdepends_on_skipped_cells§errored$9985a237-33bd-441f-afda-26c23d351dd5queued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampAzKkpersist_js_state·has_pluto_hook_features§cell_id$9985a237-33bd-441f-afda-26c23d351dd5depends_on_disabled_cells§runtime )published_object_keysdepends_on_skipped_cells§errored$af870486-fd6c-40cb-861a-1cf50aaed29bqueued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampAzKBpersist_js_state·has_pluto_hook_features§cell_id$af870486-fd6c-40cb-861a-1cf50aaed29bdepends_on_disabled_cells§runtime ҵpublished_object_keysdepends_on_skipped_cells§errored$3813b59a-0ca1-41c0-8d5d-559a5b7b1290queued¤logsrunning¦outputbodymsgٮArgumentError: Package AbstractPlutoDingetjes not found in current path:
- Run `import Pkg; Pkg.add("AbstractPlutoDingetjes")` to install the AbstractPlutoDingetjes package.
stacktracecall_short"require(into::Module, mod::Symbol)inlined£urlehttps://github.com/JuliaLang/julia/tree/742b9abb4dd4621b667ec5bb3434b8b3602f96fd/base/loading.jl#L959path./loading.jlsource_packagecall"require(into::Module, mod::Symbol)linfo_typeCore.MethodInstancelineǤfileloading.jlfuncrequireparent_modulefrom_ccall_shorttop-level scopeinlined£urlpathف/home/runner/work/disorganised-mess/disorganised-mess/APD with_js_link bidirectional 3.jl#==#3813b59a-0ca1-41c0-8d5d-559a5b7b1290source_packagecalltop-level scopelinfo_typeCore.CodeInfolinefileKAPD with_js_link bidirectional 3.jl#==#3813b59a-0ca1-41c0-8d5d-559a5b7b1290functop-level scopeparent_modulefrom_c¤mime'application/vnd.pluto.stacktrace+objectrootassigneelast_run_timestampA|0װpersist_js_state·has_pluto_hook_features§cell_id$3813b59a-0ca1-41c0-8d5d-559a5b7b1290depends_on_disabled_cells§runtimepublished_object_keysdepends_on_skipped_cells§errored$e9f1432c-2256-42ef-8a80-08d8b0f8b6a7queued¤logsrunning¦outputbodymimetext/plainrootassigneelast_run_timestampAzKpersist_js_state·has_pluto_hook_features§cell_id$e9f1432c-2256-42ef-8a80-08d8b0f8b6a7depends_on_disabled_cells§runtime صpublished_object_keysdepends_on_skipped_cells§errored$7ece8b4f-d929-4629-b395-56c98bf14de9queued¤logsrunning¦outputbodymsgUndefVarError: @htl not definedstacktracecall_shorttop-level scopeinlined£urlpathsource_packagecalltop-level scopelinfo_typeNothingline filefunctop-level scopeparent_modulefrom_ccall_short#macroexpand#51inlinedãurlpath./expr.jlsource_packagecall#macroexpand#51linfo_typeNothinglinesfileexpr.jlfunc#macroexpand#51parent_modulefrom_ccall_shortmacroexpandinlinedãurlpath./expr.jlsource_packagecallmacroexpandlinfo_typeNothinglinerfileexpr.jlfuncmacroexpandparent_modulefrom_c¤mime'application/vnd.pluto.stacktrace+objectrootassigneelast_run_timestampA} persist_js_state·has_pluto_hook_features§cell_id$7ece8b4f-d929-4629-b395-56c98bf14de9depends_on_disabled_cells§runtimepublished_object_keysdepends_on_skipped_cells§erroredñcell_dependencies $fbd43578-2061-4bf0-a87c-e193a42998caprecedence_heuristic	cell_id$fbd43578-2061-4bf0-a87c-e193a42998cadownstream_cells_mapupstream_cells_map$964d0060-9ed0-4824-a92c-1ae20c25c288precedence_heuristic	cell_id$964d0060-9ed0-4824-a92c-1ae20c25c288downstream_cells_mapupstream_cells_map$49786782-88c7-11ee-361d-9578fba566f6precedence_heuristiccell_id$49786782-88c7-11ee-361d-9578fba566f6downstream_cells_mapPkg$4b9adb89-a54b-4cba-9091-79c81168560dupstream_cells_map$31c03827-9c7a-45ba-aec4-d45794f3e93fprecedence_heuristic	cell_id$31c03827-9c7a-45ba-aec4-d45794f3e93fdownstream_cells_mapwith_js_linkupstream_cells_map$24aad28b-8f4e-484f-8301-0c9205a40d66precedence_heuristic	cell_id$24aad28b-8f4e-484f-8301-0c9205a40d66downstream_cells_mapupstream_cells_map$3b5f9c8b-200b-4f26-a48e-faf28a6bf80aprecedence_heuristic	cell_id$3b5f9c8b-200b-4f26-a48e-faf28a6bf80adownstream_cells_mapupstream_cells_map$3ff49038-6945-4eb4-8ac7-81ac7531572bprecedence_heuristic	cell_id$3ff49038-6945-4eb4-8ac7-81ac7531572bdownstream_cells_mapupstream_cells_map$c30f2819-5c76-4ac7-b962-e7d465f652b9precedence_heuristic	cell_id$c30f2819-5c76-4ac7-b962-e7d465f652b9downstream_cells_mapupstream_cells_map$cbf6498f-abcf-4d1e-9f03-364aad4d0db5precedence_heuristic	cell_id$cbf6498f-abcf-4d1e-9f03-364aad4d0db5downstream_cells_mapupstream_cells_mapPlutoRunnerPlutoRunner.throw_syntax_error$e041300e-a263-4eca-976a-0a00c25ae318precedence_heuristic	cell_id$e041300e-a263-4eca-976a-0a00c25ae318downstream_cells_mapupstream_cells_map$7db59ac0-2c7f-4be7-bdb7-19af83fe82ebprecedence_heuristic	cell_id$7db59ac0-2c7f-4be7-bdb7-19af83fe82ebdownstream_cells_maplink_from_julia$7ece8b4f-d929-4629-b395-56c98bf14de9Base.showBase.put!JSGeneratorFinish$7db59ac0-2c7f-4be7-bdb7-19af83fe82ebJSGenerator$7db59ac0-2c7f-4be7-bdb7-19af83fe82ebupstream_cells_map Dict+AbstractPlutoDingetjes.Display.with_js_linkIOChannel!Bool@MIME_strStringJSGenerator$7db59ac0-2c7f-4be7-bdb7-19af83fe82ebtake!Base===valueswriteisreadyAbstractPlutoDingetjes$3813b59a-0ca1-41c0-8d5d-559a5b7b1290JSGeneratorFinish$7db59ac0-2c7f-4be7-bdb7-19af83fe82ebRefget!$9542b8ab-c442-45c9-8f9e-6e710ed71bbbprecedence_heuristic	cell_id$9542b8ab-c442-45c9-8f9e-6e710ed71bbbdownstream_cells_mapupstream_cells_map$80d9b34a-a118-437d-954b-bec3be94273fprecedence_heuristic	cell_id$80d9b34a-a118-437d-954b-bec3be94273fdownstream_cells_mapupstream_cells_map$4d1057f7-c033-4bcb-9b81-a93d96c1a1f8precedence_heuristic	cell_id$4d1057f7-c033-4bcb-9b81-a93d96c1a1f8downstream_cells_mapupstream_cells_mapBase.CoreLogging.===put!Channel#___this_pluto_module_nametake!Base.CoreLogging.handle_messageBase.CoreLogging.!Base#Base.CoreLogging._invoked_shouldlogisreadyBase.CoreLogging.logging_error@infoBase.CoreLogging.>='Base.CoreLogging.current_logger_for_envBase.CoreLogging.convert$24d5cf8a-439c-4b99-a8d6-2f03aefb9658precedence_heuristic	cell_id$24d5cf8a-439c-4b99-a8d6-2f03aefb9658downstream_cells_mapupstream_cells_map$274f0781-26d5-49f6-8306-d81129b8afafprecedence_heuristic	cell_id$274f0781-26d5-49f6-8306-d81129b8afafdownstream_cells_mapupstream_cells_map$4b9adb89-a54b-4cba-9091-79c81168560dprecedence_heuristiccell_id$4b9adb89-a54b-4cba-9091-79c81168560ddownstream_cells_mapupstream_cells_mapPkg$49786782-88c7-11ee-361d-9578fba566f6Pkg.activate$78a32b95-d502-4e96-b074-a1d07e5a51a5precedence_heuristiccell_id$78a32b95-d502-4e96-b074-a1d07e5a51a5downstream_cells_mapHypertextLiteralupstream_cells_map$9b58eaa7-0cda-4e29-ab11-ed03f40a1c11precedence_heuristic	cell_id$9b58eaa7-0cda-4e29-ab11-ed03f40a1c11downstream_cells_mapstate$9edfc363-c5a9-43b1-94fc-2cd63171ba34upstream_cells_mapRef$9edfc363-c5a9-43b1-94fc-2cd63171ba34precedence_heuristic	cell_id$9edfc363-c5a9-43b1-94fc-2cd63171ba34downstream_cells_mapupstream_cells_mapText|>state$9b58eaa7-0cda-4e29-ab11-ed03f40a1c11$9985a237-33bd-441f-afda-26c23d351dd5precedence_heuristic	cell_id$9985a237-33bd-441f-afda-26c23d351dd5downstream_cells_mapupstream_cells_map$af870486-fd6c-40cb-861a-1cf50aaed29bprecedence_heuristic	cell_id$af870486-fd6c-40cb-861a-1cf50aaed29bdownstream_cells_mapupstream_cells_map$3813b59a-0ca1-41c0-8d5d-559a5b7b1290precedence_heuristiccell_id$3813b59a-0ca1-41c0-8d5d-559a5b7b1290downstream_cells_mapAbstractPlutoDingetjes$7db59ac0-2c7f-4be7-bdb7-19af83fe82ebupstream_cells_map$e9f1432c-2256-42ef-8a80-08d8b0f8b6a7precedence_heuristic	cell_id$e9f1432c-2256-42ef-8a80-08d8b0f8b6a7downstream_cells_mapupstream_cells_map$7ece8b4f-d929-4629-b395-56c98bf14de9precedence_heuristic	cell_id$7ece8b4f-d929-4629-b395-56c98bf14de9downstream_cells_mapupstream_cells_maplink_from_julia$7db59ac0-2c7f-4be7-bdb7-19af83fe82eb@error@async@htlcell_execution_order $49786782-88c7-11ee-361d-9578fba566f6$4b9adb89-a54b-4cba-9091-79c81168560d$3813b59a-0ca1-41c0-8d5d-559a5b7b1290$78a32b95-d502-4e96-b074-a1d07e5a51a5$31c03827-9c7a-45ba-aec4-d45794f3e93f$3b5f9c8b-200b-4f26-a48e-faf28a6bf80a$7db59ac0-2c7f-4be7-bdb7-19af83fe82eb$4d1057f7-c033-4bcb-9b81-a93d96c1a1f8$9b58eaa7-0cda-4e29-ab11-ed03f40a1c11$7ece8b4f-d929-4629-b395-56c98bf14de9$9edfc363-c5a9-43b1-94fc-2cd63171ba34$24d5cf8a-439c-4b99-a8d6-2f03aefb9658$cbf6498f-abcf-4d1e-9f03-364aad4d0db5$3ff49038-6945-4eb4-8ac7-81ac7531572b$274f0781-26d5-49f6-8306-d81129b8afaf$9985a237-33bd-441f-afda-26c23d351dd5$964d0060-9ed0-4824-a92c-1ae20c25c288$e041300e-a263-4eca-976a-0a00c25ae318$9542b8ab-c442-45c9-8f9e-6e710ed71bbb$24aad28b-8f4e-484f-8301-0c9205a40d66$e9f1432c-2256-42ef-8a80-08d8b0f8b6a7$af870486-fd6c-40cb-861a-1cf50aaed29b$c30f2819-5c76-4ac7-b962-e7d465f652b9$fbd43578-2061-4bf0-a87c-e193a42998ca$80d9b34a-a118-437d-954b-bec3be94273flast_hot_reload_time        shortpath#APD with_js_link bidirectional 3.jlprocess_statusreadypathY/home/runner/work/disorganised-mess/disorganised-mess/APD with_js_link bidirectional 3.jlpluto_versionv0.19.47last_save_timeAzEg,cell_order $49786782-88c7-11ee-361d-9578fba566f6$4b9adb89-a54b-4cba-9091-79c81168560d$3813b59a-0ca1-41c0-8d5d-559a5b7b1290$31c03827-9c7a-45ba-aec4-d45794f3e93f$78a32b95-d502-4e96-b074-a1d07e5a51a5$3b5f9c8b-200b-4f26-a48e-faf28a6bf80a$4d1057f7-c033-4bcb-9b81-a93d96c1a1f8$7db59ac0-2c7f-4be7-bdb7-19af83fe82eb$9b58eaa7-0cda-4e29-ab11-ed03f40a1c11$7ece8b4f-d929-4629-b395-56c98bf14de9$9edfc363-c5a9-43b1-94fc-2cd63171ba34$24d5cf8a-439c-4b99-a8d6-2f03aefb9658$cbf6498f-abcf-4d1e-9f03-364aad4d0db5$3ff49038-6945-4eb4-8ac7-81ac7531572b$274f0781-26d5-49f6-8306-d81129b8afaf$9985a237-33bd-441f-afda-26c23d351dd5$964d0060-9ed0-4824-a92c-1ae20c25c288$e041300e-a263-4eca-976a-0a00c25ae318$9542b8ab-c442-45c9-8f9e-6e710ed71bbb$24aad28b-8f4e-484f-8301-0c9205a40d66$e9f1432c-2256-42ef-8a80-08d8b0f8b6a7$af870486-fd6c-40cb-861a-1cf50aaed29b$c30f2819-5c76-4ac7-b962-e7d465f652b9$fbd43578-2061-4bf0-a87c-e193a42998ca$80d9b34a-a118-437d-954b-bec3be94273fpublished_objectsnbpkginstall_time_nsinstantiatedòinstalled_versionsterminal_outputsenabled·restart_recommended_msgrestart_required_msgbusy_packageswaiting_for_permission,waiting_for_permission_but_probably_disabled«cell_inputs $fbd43578-2061-4bf0-a87c-e193a42998cacell_id$fbd43578-2061-4bf0-a87c-e193a42998cacodemetadatashow_logsèdisabled®skip_as_script«code_folded$964d0060-9ed0-4824-a92c-1ae20c25c288cell_id$964d0060-9ed0-4824-a92c-1ae20c25c288codemetadatashow_logsèdisabled®skip_as_script«code_folded$49786782-88c7-11ee-361d-9578fba566f6cell_id$49786782-88c7-11ee-361d-9578fba566f6codeusing Pkgmetadatashow_logsèdisabled®skip_as_script«code_folded$31c03827-9c7a-45ba-aec4-d45794f3e93fcell_id$31c03827-9c7a-45ba-aec4-d45794f3e93fcode2import AbstractPlutoDingetjes.Display.with_js_linkmetadatashow_logsèdisabled®skip_as_script«code_folded$24aad28b-8f4e-484f-8301-0c9205a40d66cell_id$24aad28b-8f4e-484f-8301-0c9205a40d66codemetadatashow_logsèdisabled®skip_as_script«code_folded$3b5f9c8b-200b-4f26-a48e-faf28a6bf80acell_id$3b5f9c8b-200b-4f26-a48e-faf28a6bf80acode# let
# 	messages_to_js = Channel()
# 	send_to_js(msg) = put!(messages_to_js, msg)


# 	function get_next_message(_ignore)
# 		take!(messages_to_js)
# 	end


# 	@async begin
# 		sleep(5)
# 		for i in 1:10
# 			send_to_js(i)
# 			sleep(.3)
# 		end
# 	end
	


# 	@htl("""
# 	<script>
# 	const get_next_msg_from_julia = $(AbstractPlutoDingetjes.Display.with_js_link(get_next_message))

# 		let running = true
# 		let messages = async function* () {
# 			while(running) {
# 				yield await get_next_msg_from_julia()
# 			}
# 		}
# 		invalidation.then(() => {
# 			running = false
# 		})

# 		for await (const msg of messages()) {
# 			console.log(msg)
# 		}

# </script>
# """)

# endmetadatashow_logsèdisabled®skip_as_script«code_folded$3ff49038-6945-4eb4-8ac7-81ac7531572bcell_id$3ff49038-6945-4eb4-8ac7-81ac7531572bcodemetadatashow_logsèdisabled®skip_as_script«code_folded$c30f2819-5c76-4ac7-b962-e7d465f652b9cell_id$c30f2819-5c76-4ac7-b962-e7d465f652b9codemetadatashow_logsèdisabled®skip_as_script«code_folded$cbf6498f-abcf-4d1e-9f03-364aad4d0db5cell_id$cbf6498f-abcf-4d1e-9f03-364aad4d0db5codesBUT THIS ONLY WORKS FOR ONE CLIENT

WHCIH it should

but right now the messages go "randomly" to one of the clientsmetadatashow_logsèdisabled®skip_as_script«code_folded$e041300e-a263-4eca-976a-0a00c25ae318cell_id$e041300e-a263-4eca-976a-0a00c25ae318codemetadatashow_logsèdisabled®skip_as_script«code_folded$7db59ac0-2c7f-4be7-bdb7-19af83fe82ebcell_id$7db59ac0-2c7f-4be7-bdb7-19af83fe82ebcodebegin
	struct JSGeneratorFinish end
	
	struct JSGenerator
		APDlink
		channel::Dict{String,Channel}
	end

	function Base.put!(jsg::JSGenerator, msg)
		for c in values(jsg.channel)
			put!(c, msg)
		end
	end

	function Base.show(io::IO, m::MIME"text/javascript", wjl::JSGenerator)
		write(io, """(() => {
		let myname = `\${Math.random()}`
		let messages = async function* () {
			while(true) {
				let next = await """)
		show(io, m, wjl.APDlink)
		write(io, """(myname);
				if(next === `__jsgen_stop`) return;
				yield next;
			}
		};
		let gen = messages();
		
		invalidation.then(async () => {
			console.log("stopping! 1")
			gen.return()
			console.log("stopping! 2")
		});
		return gen;
		})()""")
	end

	function link_from_julia()
		messages_to_js = Dict{String,Channel}()
		running_ref = Ref{Bool}(true)
	
		function get_next_message(connection_id)
			if running_ref[]
				channel = get!(() -> Channel(1), messages_to_js, connection_id)
				
				# state[] *= "\nwaiting"
				# @debug "waiting"
				next = take!(channel)
				# @info "done!" next
				# state[] *= "\ndone $(next)"
				
				if next === JSGeneratorFinish()
					"__jsgen_stop"
				else
					next
				end
			else
				"__jsgen_stop"
			end
		end
	
		function stop_generator()
			# @debug "stopping"
			# state[] *= "\nstopping"
			if running_ref[]
				running_ref[] = false
	
				for c in values(messages_to_js)
					if !isready(c)
						put!(c, JSGeneratorFinish())
					end
				end
				# state[] *= "\nstopped"
			end
			
		end
	
		js_generator = JSGenerator(
			AbstractPlutoDingetjes.Display.with_js_link(get_next_message, stop_generator),
			messages_to_js,
		)
		
		return js_generator
	end
endmetadatashow_logsèdisabled®skip_as_script«code_folded$9542b8ab-c442-45c9-8f9e-6e710ed71bbbcell_id$9542b8ab-c442-45c9-8f9e-6e710ed71bbbcodemetadatashow_logsèdisabled®skip_as_script«code_folded$80d9b34a-a118-437d-954b-bec3be94273fcell_id$80d9b34a-a118-437d-954b-bec3be94273fcodemetadatashow_logsèdisabled®skip_as_script«code_folded$4d1057f7-c033-4bcb-9b81-a93d96c1a1f8cell_id$4d1057f7-c033-4bcb-9b81-a93d96c1a1f8codeolet
	c = Channel(1)
	@info "a" isready(c)
	put!(c, 1)
	@info "a" isready(c)
	take!(c)
	@info "a" isready(c)
endmetadatashow_logsèdisabled®skip_as_script«code_folded$24d5cf8a-439c-4b99-a8d6-2f03aefb9658cell_id$24d5cf8a-439c-4b99-a8d6-2f03aefb9658codemetadatashow_logsèdisabled®skip_as_script«code_folded$274f0781-26d5-49f6-8306-d81129b8afafcell_id$274f0781-26d5-49f6-8306-d81129b8afafcodemetadatashow_logsèdisabled®skip_as_script«code_folded$4b9adb89-a54b-4cba-9091-79c81168560dcell_id$4b9adb89-a54b-4cba-9091-79c81168560dcodePkg.activate()metadatashow_logsèdisabled®skip_as_script«code_folded$78a32b95-d502-4e96-b074-a1d07e5a51a5cell_id$78a32b95-d502-4e96-b074-a1d07e5a51a5codeusing HypertextLiteralmetadatashow_logsèdisabled®skip_as_script«code_folded$9b58eaa7-0cda-4e29-ab11-ed03f40a1c11cell_id$9b58eaa7-0cda-4e29-ab11-ed03f40a1c11codestate = Ref("")metadatashow_logsèdisabled®skip_as_script«code_folded$9edfc363-c5a9-43b1-94fc-2cd63171ba34cell_id$9edfc363-c5a9-43b1-94fc-2cd63171ba34codestate[] |> Textmetadatashow_logsèdisabled®skip_as_script«code_folded$9985a237-33bd-441f-afda-26c23d351dd5cell_id$9985a237-33bd-441f-afda-26c23d351dd5codemetadatashow_logsèdisabled®skip_as_script«code_folded$af870486-fd6c-40cb-861a-1cf50aaed29bcell_id$af870486-fd6c-40cb-861a-1cf50aaed29bcodemetadatashow_logsèdisabled®skip_as_script«code_folded$3813b59a-0ca1-41c0-8d5d-559a5b7b1290cell_id$3813b59a-0ca1-41c0-8d5d-559a5b7b1290codeusing AbstractPlutoDingetjesmetadatashow_logsèdisabled®skip_as_script«code_folded$e9f1432c-2256-42ef-8a80-08d8b0f8b6a7cell_id$e9f1432c-2256-42ef-8a80-08d8b0f8b6a7codemetadatashow_logsèdisabled®skip_as_script«code_folded$7ece8b4f-d929-4629-b395-56c98bf14de9cell_id$7ece8b4f-d929-4629-b395-56c98bf14de9codelet
	link = link_from_julia()

	@async try
		sleep(5)
		for i in 1:10
			put!(link, i)
			sleep(.3)
		end
	catch e
		@error "gvd" exception=e
	end

	@htl("""
	<script>
	for await (const msg of $(link)) {
		console.log(msg)
	}
	
	</script>
	""")
endmetadatashow_logsèdisabled®skip_as_script«code_folded«notebook_id$6613379c-4aad-11f0-152f-138600f588a3in_temp_dir¨metadata